Automatic resupply of consumable commodities

ABSTRACT

Methods and systems for facilitating initiation of resupply orders for consumable commodities include using a stand-alone electronic or audio-generating device incorporated into retail product packaging. The stand-alone device is equipped with a rudimentary processor or logic circuit, a memory, and a wireless transmitter. A simple user interface/activation device such as a push button or membrane switch is coupled to the logic circuit or processor. The stand-alone device is incorporated into or with product packaging, and may be configured with a resupply code at or after a point of sale. A user may activate the user interface of the device when the product needs resupplying, causing the resupply code to be transmitted to an access point or terminal that initiates a reorder sequence for the product.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to and is a continuation of U.S. patentapplication Ser. No. 14/580,049, filed Dec. 22, 2014, now issued as U.S.Pat. No. 9,959,565, which claims priority to and is a divisional of U.S.patent application Ser. No. 13/316,447, filed Dec. 9, 2011, now U.S.Pat. No. 8,924,262, which claims priority pursuant to 35 U.S.C. § 119(e)to U.S. provisional application Ser. No. 61/421,513, filed Dec. 9, 2010,which applications are hereby incorporated by reference, in theirentireties.

BACKGROUND 1. Field

This application relates to methods and systems for facilitatingresupply orders for a consumable commodity, including methods andsystems using a stand-alone electronic device incorporated into retailproduct packaging.

2. Description of Related Art

It is common for people to use an auto-refill system for consumablesthat are used at a predictable rate. For example, Amazon.com's“subscribe and save” is a system that allows shoppers to subscribe toconsumables, and have those consumables sent at approximately the timethat the consumer predicts running out of the consumable. For example, aconsumer who drinks one cup of coffee a day may have a subscription to a30-pack of K-Cup coffee pods, which subscription is filled monthly. Forfurther example, many drug stores automatically refill prescriptions ona monthly basis.

Notwithstanding their advantages, these systems share at least twodeficiencies. First, the system only works for refills that are neededon a predictable basis. Goods that are consumed on a periodic basis,goods that are consumed at an irregular rate, or goods that are consumedat a rate that is dissonant with the package size/refill periodcombination (i.e. Amazon only allows refills in increments of a month,so a 24-pack of a daily-consumed item is dissonant) all result in eitherrunning out of the item prior to refill or refilling the item before itis needed. Second, the system requires user intervention via a sign-inprocess in order to refill in any manner other than the originallyselected one.

Predictable refill systems provide benefits to the merchant, includingthat the merchant may predict their stock requirements and the merchantis assured that the consumer will not run out and need to purchase thereplacement locally (i.e. from another merchant in order to avoidshipping delays). Merchants may realize these and other benefits from asystem that permits the user to re-order on demand without needing tosign into a web site.

One-click ordering as implemented by Amazon.com has shown value inallowing users to order from a web site with a minimum of work. Thepresent disclosure provides substantial improvements over technologiessuch as one-click ordering systems, subscribe-and-save systems, orcombinations of these system, and other prior art methods and systems.

SUMMARY

Methods and systems for facilitating resupply orders for a consumablecommodity are disclosed, including methods and systems using astand-alone electronic device incorporated into retail productpackaging.

In an aspect, a method for facilitating resupply orders for a consumablecommodity may include receiving a signal encoding a registered code froma code-provision device associated with a defined quantity of acommodity, in response to an event indicating that consumption of apredetermined portion of the defined quantity has occurred. The methodmay further include decoding the signal to recognize the registeredcode, using a client device proximal to the code-provision device. Themethod may further include transmitting the registered code to adesignated remote address, to initiate an automated transaction orderingan additional amount of the commodity for shipment to a designatedaddress.

In an aspect of the method, the code-provision device may be packagedwith a defined quantity of a commodity in packaging that is free of anywired interface to a machine, as a stand-alone device. The device mayinclude a socket for temporary connection; a user-initiated temporaryconnection may be used to trigger providing of the registered code forresupplying the commodity. The code-provision device may be designedsuch that the wired connection may be removed by the user as soon as thereordering sequence for the commodity is finished.

In another aspect, the method may include outputting a confirmationsignal from the client device, prior to transmitting the registered codeto the designated remote address. In such case, the method may includetransmitting the registered code to the designated remote address inresponse to receiving a response to the confirmation signal.

In another aspect of the method, receiving the signal may includephotographing an image encoding the registered code, using a cameraoperatively coupled to the client. In such embodiments, the eventindicating that consumption of a predetermined portion of the definedquantity has occurred may include finally revealing the image byconsumption of the predetermined portion of the commodity. In thealternative, or in addition, receiving the signal may include receivinga wireless electronic transmission encoding the registered code from aradio-frequency transmitter of the code-provision device.

In separate aspects of the method, the event indicating that consumptionof a predetermined portion of the defined quantity has occurred mayinclude activating a sensor in communication with the code-provisiondevice, the sensor operative to sense at least one of a commodity leveland a change in package configuration.

The method may include initiating an application on the client device toplace the client device in a state for receiving the signal. In someembodiments, the client device may include or be coupled to a wirelessreceiver tuned to a specific frequency band, time domain, or otherwireless mode reserved specifically for use by the code-provision deviceand like devices. Thus, the client may be alerted to incoming registeredcodes with minimal overhead required on the client side orcode-provision device side to support effective wireless communication.For example, in an aspect the client device may be incorporated in awireless router, and use a different wireless protocol than the wirelessrouter to receive the signal from the code-provision device.

In a related aspect of the present technology, an apparatus may includea wireless receiver; a processor coupled to the receiver; and a memorycoupled to the processor; wherein the memory holds program instructions,that when executed by the processor, causes the apparatus to perform:receiving a signal encoding a registered code from a code-provisiondevice associated with a defined quantity of a commodity, in response toan event indicating that consumption of a predetermined portion of thedefined quantity has occurred, decoding the signal to recognize theregistered code, using a client device proximal to the code-provisiondevice, and transmitting the registered code to a designated remoteaddress, to initiate an automated transaction ordering an additionalamount of the commodity for shipment to a designated address.

In another aspect, an assembly for providing a registration/reorderingcode may include a stand-alone code-provision device packaged with adefined quantity of a commodity. The code-provision device may beconfigured in relation to the commodity or to packaging for thecommodity to provide a signal encoding a registered code. Activation ofthe code-provision device may be enabled by consumption of at least apredetermined portion of the defined quantity. The packaging may be freeof any wired interface to a machine.

In an aspect of this assembly, the code-provision device may include asubstrate bearing the registered code in a machine-readable form, thesubstrate affixed to a predetermined one of multiple commodity unitsincluded in the assembly. For example, the code-provision device mayinclude a label bearing the registered code in a machine-readableoptically encoded form. The substrate may be affixed to packaging forthe commodity so as to be finally revealed when the predeterminedportion is completely consumed.

In some embodiments, the code-provision device may include a processorcoupled a memory, and a transmitter coupled to the processor, whereinthe memory holds the registered code. The assembly may further include auser input device coupled to the processor, wherein the user inputdevice is positioned to be accessible to a user after the consumption ofthe at least a predetermined portion of the defined quantity. In anaspect, the user input device may be positioned to be inaccessible untilthe consumption of the at least a predetermined portion of the definedquantity has occurred. The user input device may include an input key orswitch, for example a single-key push button.

In another aspect, the assembly may include a sensor coupled to theprocessor, wherein the memory further holds program instructions thatwhen executed by the processor cause the code-provision device totransmit the registered code in response to a signal from the sensor.The sensor may be configured to provide the signal in response to asensed commodity level relative to the packaging. In the alternative, orin addition, the sensor may be configured to provide the signal inresponse to opening of a package seal or compartment of the packaging.

A host participating in a reordering system may perform a method asfollows. The method may include configuring an automated ordering schemein response to user inputs, using a computer, the automated orderingscheme identifying at least a commodity, a quantity of the commodity,and a destination address for a user account identified by an accountidentifier, and a scheme identifier for the automated ordering scheme.The method may include providing the scheme identifier for encoding in acode-provision device to be supplied with the commodity to thedestination address. The method may include recording the automatedordering scheme in a computer memory. The method may includeautomatically placing an order according to the automated orderingscheme in response to receiving the scheme identifier from a clientdevice. The method may include automatically placing the order isfurther performed in response to receiving the account identifier fromthe client device with the scheme identifier.

More detailed aspects of the foregoing method, and related methods, aredescribed in more detail in the detailed description that follows.

In related aspects, an apparatus for facilitating resupply orders for aconsumable commodity may include a processor coupled to a memory and awireless transmitter, the memory holding instructions that when executedby the processor cause the apparatus to perform any of the methods andaspects of the methods summarized above or described in more detailbelow. Certain aspects of such apparatus (e.g., hardware aspects) may beexemplified by equipment such as a wireless network interface forwireless communications. Similarly, an article of manufacture may beprovided, including a non-transitory computer-readable storage mediumholding encoded instructions, which when executed by a processor, maycause a specialty device configured as a resupply order initiatingapparatus to perform ones of the methods and aspects of the methods assummarized above. In another aspect, an article of manufacture may beprovided, including a non-transitory computer-readable storage mediumholding encoded instructions, which when executed by a processor, maycause a general-purpose computer configured as a node for handling awireless resupply code from a resupply order initiating apparatus toperform other ones of the methods and aspects of the methods assummarized above.

BRIEF DESCRIPTION OF THE DRAWINGS

The present technology, in accordance with one or more variousembodiments, is described in detail with reference to the followingfigures. The drawings are provided for purposes of illustration only andmerely depict typical or example embodiments of the technology. Thesedrawings are provided to facilitate the reader's understanding of thetechnology and shall not be considered limiting of the breadth, scope,or applicability of the technology.

FIG. 1 is a block diagram showing an example of a system for performingone or more methods as described herein related to facilitating resupplyorders for a consumable commodity.

FIG. 2 is a flow chart showing an example of a method for implementationusing a network server or the like, for example a reordering host, forfacilitating resupply orders for a consumable commodity from astand-alone device.

FIG. 3 is a flow chart showing an example of a method for implementationusing a client device proximal to the point of use for a suppliedcommodity, for facilitating resupply orders for the commodity.

FIG. 4 is a schematic diagram showing more detailed aspects of astand-alone reordering device incorporated into product packaging for acommodity.

DETAILED DESCRIPTION

The present disclosure is directed methods and systems for facilitatingresupply orders for a consumable commodity, including but not limited tomethods and systems using a stand-alone electronic device incorporatedinto retail product packaging.

The inventions improve on existing technology by placing a “re-order”device in, near, or within a consumable good. The re-order deviceprovides single-click functionality to order a refill of the consumablegood. The device may also have other buttons, including “cancel”,“quantity”, and “expedite”, as well as optional display modality toprovide the user with feedback as to the current order status. Thedevice may also have a timing modality that permits tracking thefreshness of the goods. For example, if a good must be used within 4weeks of opening, the good may be automatically re-ordered, even if notfully used, in time to have a replacement arrive within 4 weeks ofopening. A timer that automatically reorders upon the predictedexpiration of goods may be incorporated directly into the orderingsystem, to eliminate any need to require a separate device. For example,a web site may allow a person to indicate that when a medication expireson a specified date, if it hasn't previously been re-filled, a refillshould arrive by that date.

An example of how one implementation may work is as follows: A coffeebox may have 60 K-Cups in it. 4 of the K-Cups are contained within aseparate area marked “use last”. When the first 56 K-Cups have beenused, the user opens the separate area. A signaling device is triggeredin response to opening that area and a signal is sent to the merchantinstructing that the K-Cups be refilled. This signal system may be donewith a sound picked up by a cell phone, a signal that travels to a cellphone, a WiFi signal, a blue tooth signal, or another radio, sound, orlight signal. In an implementation, the signaling device ispre-programmed at the merchant to respond to any security measures usedby the WiFi receiver (for example, a WPA password may be pre-encoded inthe signaling device). In another implementation, the user is given asingle receiver that connects to the merchant via WiFi, 3G, phone, wiredEthernet (such as by connecting to an Ethernet port on a WiFi system,thereby avoiding password or encryption issues) or other system. Thereorder signaling devices then route the reorder signals through thatreceiver, obviating the need for coding passwords into each signalingdevice. In an implementation, the signaling devices may be re-used. Inan implementation, a barcode, RFID chip, or other mechanism within or onthe package of goods is used to program the signaling device for usewith that package of goods. In an implementation, the signaling receiver(or the merchant via a direct connection) can trigger an auditory orvisual alert on the signaling device, permitting a lost device to befound.

In one implementation, biometric data about the user (or a plurality ofusers) is utilized to validate a reorder. For example, in a home withchildren it is possible that the children might empty an entire box ofsugar packets, spilling them on the floor. In such a case, the biometricdata indicates that the last packet was taken by somebody not permittedto actuate a reorder, and additional verification may be required.

In one implementation, the measurement and triggering devices may beused to provide data relating to security. When multiple goods areemptied in too short of a time period, it is likely that the goods arebeing pilfered. In such a case, an alert may be sent to the user and/orto the merchant and/or to law enforcement and/or to any other recipientidentified by the user. Data from the sensors may optionally be sent aswell. In one implementation, the rapidity of emptying the goods isutilized to increase the probability that theft is taking place and makea notification more likely. In another implementation, the aggregatevalue of the goods being used in a set time frame may be used to measurethe probability that a theft is taking place. Even where no theft istaking place, destruction, vandalism, or wasting of goods may bedetected and reported using the data from multiple sensors, which datawould preferably include information about the speed with which thegoods are used, the value of the goods, and biometric data about theperson taking the goods. In a preferred implementation, the data ismeasured against historical data for that particular installation or forthe specific type of good associated with the trigger. In oneembodiment, the user may temporarily or permanently suspend function ofone or more sensors and/or of the reorder function, for example if theuser is about to move the goods, reorganize the goods, or otherwisemanipulate the goods. In one embodiment, a password or other validationmay be required prior to permitting such a suspension, and/or a warningabout such a suspension request sent to a user for information and/orverification purposes (i.e. requiring the user to verify the suspensionbefore putting it into effect).

In one embodiment, a centralized order point is incorporated into awireless router. The centralized order point would receive signals fromsensors throughout the installation and route them over the internet. Ina preferred embodiment, the wireless router would utilize a differentcommunication protocol and/or a different communication modality and/orwireless frequency to communicate with the sensors. For example, awireless router may communicate with computers and similar devices usingthe 802.11B, 802.11G, and 802.11N standards at the 2.4 GHz and 5 GHzfrequencies. However, the wireless router may communicate with thesensors using a different protocol at the 2.4 GHz frequency, or using adifferent modality, such as sound or light, or using a differentfrequency. Because the centralized order point is incorporated into awireless router (either physically as part of the router or as an add-onto the router such as by connected to it via wired Ethernet or by adedicated port), the sensors can send data without having to go to theexpense and difficulty of getting compatible hardware and settingappropriate encryption keys. Security for the reorder system may beimplemented using fixed keys or a system similar to wireless protectedsetup. Security may also be enhanced by limiting the range of thecentralized order point. In one embodiment, the centralized order pointis capable of receiving signals from the sensors but cannot send signalsto the sensors, preventing the exploitation of the sensor communicationprotocol to steal information. In another embodiment, the centralizedorder point may send only a certain set of signals to the sensors. Inanother embodiment, the access speed for the sensor protocol is made soslow that even a successful cracking of the protocol by a hacker wouldresult in information flow so slow as to prevent the hacker fromobtaining a material quantity of data within a reasonable time frame. Inanother embodiment, the centralized access point may utilize only theexisting hardware of a wireless router, and be implemented throughfirmware. In another embodiment, a specified pattern of unauthorizedaccess attempts against the wireless router by a sensor would in fact beunderstood by the router as a signal from the sensor and interpretedaccordingly. Similarly, a specified pattern of SSID broadcasts by therouter would be understood by the sensor as a signal from the router andinterpreted accordingly (in one implementation, the sensors maythemselves broadcast SSIDs for detection by the router, communicatingwith the router in such a manner). In another embodiment, the SSIDs maythemselves constitute the communication, preferably in conjunction witha encryption system or validation system to validate that thecommunication is from an authorized device. In another embodiment, MACaddresses may be used in a manner similar to that described for SSIDs.While these communication modalities and improvements are discussed inthe context of a goods ordering system, it should be understood thatthey have application outside of that context. For example, any devicemay signal any router using the specified pattern of unauthorized accessattempts described above.

In one implementation, the user, merchant, or both are given theopportunity to identify goods that require confirmation beforefinalizing an order. Such confirmation may be required all of the timefor certain goods, or only under certain conditions, such as when areorder is made earlier than expected (whether measured as a fixedperiod or relative to a modal or average time before reorder), when areorder costs more than a set amount, when the price for a reorder haschanged, when the shipping time has changed, when the cost of shippinghas changed, when the shipment is not expected to arrive before theremainder of the good is projected to be depleted, when the shipment isexpected to arrive well before the remainder of the good is projected tobe depleted, or based on other criteria. The confirmation may be anaffirmative requirement (i.e. the user must confirm prior to shipment)or it may be a negative election option (i.e. the user is deemed to haveconfirmed if the user has not cancelled within some period afterordering and/or receiving notice of the order by email or other means.The confirmation may take the form of requiring the user to log into aweb site to confirm, requiring the user to confirm the order byinitiating or responding to email, SMS, or voice communication, or byother methods. In one implementation, the user may confirm and/or beasked to confirm the order in a manner that is tied to the triggeringevent by time and/or proximity to the trigger, and the notice and/ormode of confirmation may also be tied to the trigger. In such animplementation, for example, a user might take a packet of coffeecreamer from a box, reducing the number of remaining coffee creamers andtriggering a reorder. A sound, light, and/or display notification may betriggered, in one implementation asking the user whether he wants toconfirm a reorder, defer the reorder decision by a certain period oftime or until a certain number of additional coffee creamers have beenused. In one implementation, the user may be provided the option to usea simple response, such as saying “snooze”, to defer the decision untilthe next time a coffee creamer is taken.

It should be understood that one or more triggering devices may beincluded in the original packaging, or may be present in a containerthat a user transfers some or all of the contents of the originalpackaging into. In one implementation, either as part of theconfirmation process for a reorder or as part of configuration of thesystem when stocking the good, the user may indicate that he hasadditional quantities of the good available to restock. In this way, theuser may cause the system to count additional items as present, eventhough they cannot be directly measured, and defer the reorder triggerbased on projected needs after including those additional quantities. Inanother implementation, the trigger for a reorder may be observable to,and identifiable by, the user. When the user sees the trigger item (suchas a red packet of sugar marked “reorder” and tied to a reordertrigger), the user may elect to avoid triggering a reorder by taking adifferent packet of sugar (such as by reaching behind the triggerpacket), refilling the container from additional stock so that thetrigger isn't actuated, or otherwise manually manipulating the actuationof the reorder trigger. Similarly, the user might elect to reorder earlyby taking the “reorder” item out of sequence.

In one implementation, a user may be given a signaling receiver toconnect to the 3G network together with one signaling device for eachsubscription to a set of goods. The signaling device is then kept withthe goods. When the consumer notices the goods running low, the consumerpressed presses the “re-order” button. Optionally a confirmation may berequired via email, computer, or the device itself. When the replacementgoods arrive, the signaling device is then kept with the replacementgoods.

In another embodiment, code is printed on the consumable items orpackaging that can then be scanned by a consumer electronic deviceoperating a reorder application. The electronic device reads the code,checks it against registered codes for the user and/or transmits thecode to an ordering system computer, which causes the consumable itemsto be automatically ordered according to the user's predeterminedpreferences or default system preferences. A keyfob, phone, camera, orother input device may be used as the consumer electronic device forscanning the printed code. In the alternative, the code may be opticallyencoded by some alternative method, magnetically encoded, or transmittedvia a wireless signal (for example, from an RFID device) to the consumerelectronic device.

In another embodiment, the reorder trigger may be a floating measurementdevice (such as a floating element attached to an arm that triggers aswitch when the volume drops below a certain amount) or any other methodused to measure volumes of liquid. Similarly, the trigger may have anelement that rests on the top of a non-liquid and is actuated when theresting element drops below a certain level. The trigger may also beactuated based on the weight of goods or liquids. A weight-actuatedtrigger may be set to ignore peak or valley weights (such as if a userleans on the trigger), measuring a modal weight over a time period.Alternatively, such a trigger may be set to require a triggering weightexist for a certain period of time before actuating.

An additional triggering system may include one or more camerasoperatively connected to a computer system. The input from the camerasis analyzed by the computer system and the computer determines thequantity of goods remaining. A reorder is triggered when a threshold isreached. In another embodiment, a code reading device may be utilized toread codes present on items as they are removed from the storagecontainer. The code mechanism, the camera mechanism, or a combinationthereof may be utilized to measure depletion of goods when more than onekind of good, intended for separate measurement, is present in the samecontainer. In another embodiment, a code may be printed on a triggeringgood, so that when that good is removed, the reorder is triggered.

The amount of remaining goods may also be measured using a “totalizer”approach, wherein the total initial amount of goods is measured, and isreduced by the number of goods removed and increased by the number ofgoods added. Such an approach may be utilized alone or in combinationwith confirmation of approximate agreement with one or more of the othermethods.

The sound of the good being consumed may also be used to measure rate ofconsumption. For example, a silo-style dispenser of jelly beans makes asound as each jelly bean hits the bowl. Such sounds could be counted orotherwise measured and the resulting data used to calculate the amountof good remaining.

In one embodiment, the triggering element may communicate with areordering device by emitting a sound or light signal that the devicerecognizes. One similar implementation is to utilize the sound producedby the trigger (or, with a totalizer or other appropriate approach,goods other than the trigger) to actuate the reorder process. Forexample, a triggering sugar packet could be attached to the box using anadhesive deployed in a pattern such that it makes an identifiable soundwhen removed. A sound sensor would detect the sound and actuate thereorder process.

FIG. 1 shows a system 100 including several networked computers, forexample a reordering host 102 in communication with a client 106, forexample a personal computer, laptop computer, notepad computer, via awide area network 110, for example, the Internet. By way of alternativeexample, the system 100 also includes a mobile client 118, for example asmart phone or notepad computer, in communication with the host 102 viaa wireless communication network 112. Clients 106, 118 may comprisevirtually any device that includes a processor, memory, user inputdevice for example a keypad or touchscreen device, user output devicefor example a display device, and some provision for communicating witha remote host such as a network or wireless interface. Such devices mayinclude, for example, many “smart” appliances for use in the home orworkplace, as well as more dedicated computers and computing devices.

System 100 may also include a separate commerce host 120 incommunication with the reordering host. The commerce host may performfunctions conventionally associated with transacting commerce over theInternet or other communication networks, alone or in conjunction withvarious ancillary servers. In comparison, the reordering host 102 mayfunction to define and initiate automatic reordering schemes in responseto user input from connected clients 106 or 118, as described elsewhereherein.

In some embodiments, client 106 may comprise or be coupled to a wirelessreceiver 108 capable of receiving a wireless signal from a transmitter114 coupled to a sensor or transducer (for example, a push button) 116included on or with a defined quantity of any suitable commodity 114.The combination of the transmitter and sensor/transducer may comprise acode-provision device; such a device may further comprise a processorand memory (not shown) coupled to the transmitter and sensor transducer.In some embodiments, the client device 106 may be integrated into awireless router for a local area network (LAN), which may also includeor be coupled to a modem. In such embodiments, the client maycommunicate or passively receive signals from the code-provision device104 using a protocol that is different from a protocol that the wirelessrouter uses to communicate with devices on the LAN.

In some embodiments, the processor operates a program stored in memoryto control the transmitter in response to sensor input. In suchembodiments, the sensor may be configured to sense directly orindirectly when a first portion 105 of the commodity 107 is consumed,leaving only a second portion 104. In directly sensing embodiments,removal of the last unit or quantity of commodity in the first portion105 triggers the sensor. In indirectly sensing embodiments, thecommodity 107 is packaged such that a seal or other packaging componentmust be opened or moved to access the remaining commodity portion 104,thereby triggering the sensor 116.

In other embodiments, no processor is needed and the transmitter merelytransmits a predetermined signal in response to manual activation of thetransducer 116. For example, the user can simply press a button that isrevealed or highlighted when a first portion 105 of the commodity 107 isconsumed, causing transmission of a resupply code to the receiver 108 ofclient 106. As noted above, the transmission may comprise a prerecordedaudio code; for example, a sequence of tones, generated by apiezoelectric tone generator or speaker (not shown). In the alternative,or in addition, the transmission may comprise a wireless radio signalfor a network, for example a WiFi (IEEE 802.11), or other radio signal.As noted above in several places, the radio or other wireless (e.g.,light, infrared, sound) signal may use a different and distinctprotocol, frequency band, and/or mode that used by other wirelessdevices commonly used in households, for example, WiFi, Bluetooth, andvarious cellular protocols used for voice and data with mobile devices.

In embodiments using a wireless communications protocol to communicate aresupply code, a processor may be needed to implement a selectedwireless communication protocol for transmitting the recorded resupplycode. In addition, after generating and outputting the tone sequence orradio transmission one or more times, the device may play a pre-recordedaudio message; for example, “Thank you, your order for [productdescription inserted] has been placed with [supplier name inserted],” or“Thank you, please log onto [host name inserted] to view and confirmyour order.”

In other embodiments, the reordering code (also called a resupply code)122 is encoded, for example in a machine-readable optical or magneticcode, on a label or other substrate that is revealed by consuming thefirst commodity portion 105. This label or other substrate may operatesimilarly to reorder forms as used, for example, in conventional formbooks (such as checkbooks). However, unlike conventional reorder forms,the reordering code 122 is specially configured as described herein, sothat when scanned by a mobile client 118 or the like, the client 118 iscaused to automatically initiate a reordering process.

In other embodiments, the reordering device 104 may be configuredwithout any sensor. In such embodiments, the reordering device mayinclude a user interface (also called a user input device) for receivinga user input signal, coupled to a processor or control circuit. Forexample, the user interface may include, or may consist of, a switch orsingle-key input device. For more detailed example, such a switch may beconfigured as a membrane switch in a panel resembling a button, whichmay be labeled with text explaining “Press here to reorder [productdescription] from [supplier name].” The user interface may be positionedto be accessible to a user after a predetermined portion of a definitequantity of product (e.g., commodity) contained in a packaging assemblyis consumed or removed. The user interface may be accessible prior tothe consuming or removal of the product, or in the alternative, may bepositioned to be inaccessible until a predetermined portion of theproduct has consumed or removed. For example, a “reorder button” panelmay be placed at a position where it is not visible and/or accessibleuntil at least a substantial fraction (e.g. one-half, two-thirds,three-quarters, etc.) of the product has been removed from thepackaging. Once the user interface device is activated by a user, aprocessor or circuit of the reordering device 104 may generate awireless transmission of the reordering code, in response to a signalfrom the user input device.

To prevent inadvertent or unintended activation of a “reorder button”type interface, such a device may be covered by a seal, cap or otherstructure that prevents activation unless or until the coveringstructure is removed. Such a device may be made “child safe” using knowntechniques for protecting hazardous household substances, to preventactivation by young children. One such configuration is shown in FIG. 4discussed later in this disclosure. In addition, the registeredreordering code may be unique to a particular order so that it cannot beused more than once. Once it has been used to reorder a product, furtherattempts to use the same reordering code may be ignored.

In general, the reorder device 104 may be configured in packaging thatis free of any wired interface to a machine. This configuration iscontrary to approaches used for certain commodities, for example,ink-jet printer inks, that are typically packaged in containers thatplug into a wired interface to a printer, and enable communicationbetween a device in the ink package and the printer and/or another nodeconnected to the printer. In a contrasting stand-alone configurationused for the device 104, the packaging and device may be free of anywired interface that is connected to any machine during use orconsumption of the packaged commodity.

In some embodiments, the device may include a wired socket or otherinterface for making a temporary wired connection solely for the purposeof initiating a product reordering scheme. For example, to reorder aproduct, a user may insert a USB or other connector for a cable (notshown) that is connected at its other end to a node such as a smartphone or notepad computer into a matching socket (not shown) of thereordering device 104. In such case, connection of the cable mayinitiate transmission of the resupply code to the connected computingdevice/client client 106. After the product is automatically reorderedin response to connection of the cable, the user may remove the cableconnection from the device 104, which may remain with the productpackaging. As a stand-alone device, the reordering device 104 may bepowered by a battery, photo-electric power device, or other powersource. However, when a wired connection is used, power may only beneeded during a cable connection-initiated reordering sequence. Hence,in such embodiments, power may be supplied via the cable from theconnected client 106.

In view of exemplary systems shown and described herein, methodologiesthat may be implemented in accordance with the disclosed subject matter,will be better appreciated with reference to various flow charts. Forpurposes of simplicity of explanation, methodologies are shown anddescribed as a series of acts in blocks, but the claimed subject matteris not limited by the number or order of blocks, as some blocks mayoccur in different orders and/or at substantially the same time withother blocks from what is depicted and described herein. Moreover, notall illustrated blocks may be required to implement methodologiesdescribed herein. It is to be appreciated that functionality associatedwith blocks may be implemented by software, hardware, a combinationthereof or any other suitable means (e.g., device, system, process, orcomponent). Additionally, it should be further appreciated thatmethodologies disclosed throughout this specification are capable ofbeing stored as encoded instructions and/or data on non-transitorycomputer-readable medium to facilitate transporting and transferringsuch methodologies to various devices.

As used in this application, the terms “component”, “module”, “system”,and the like are intended to refer to a computer-related entity, eitherhardware, a combination of hardware and software, software, or softwarein execution. For example, a component may be, but is not limited tobeing, a process running on a processor, a processor, an object, anexecutable, a thread of execution, a program, and/or a computer. By wayof illustration, both an application running on a server and the servercan be a component. One or more components may reside within a processand/or thread of execution and a component may be localized on onecomputer and/or distributed between two or more computers.

FIG. 2 is a flow chart showing an example of a method 200 forimplementation using a network server or the like, for example areordering host 102. Initially, the host may configure a user accountassociated with payment details, user identification, shipping address,user preferences, user profile, and other details as known for onlinecommerce. In the alternative, the user account may be pre-configured andreferenced via a coupled user account server or other merchant. However,it is contemplated that the user account details stored at or accessiblevia a reordering host should include special information pertinent toreordering, for example user preferences specifying maximum and/orminimum rates for reordering specific commodities, conditions applicableto expediting or cancelling orders, and applicable payment accounts forreordering.

In this vein, the host may configure 204 one or more automaticreordering schemes for specific commodities. Such schemes may include atminimum an identifier for the commodity (for example, a UPC code), aquantity to be reordered with each automatic reordering request, adefault payment account for the order and a default shipping address.Other parameters forming part of a scheme may include, for example, amaximum reordering frequency (for example, no more than 4 reorderspermitted in any rolling 12-month period), a minimum reorderingfrequency, or whether or not user confirmation is required for reorderrequests. The host may generate a code to identify the reorderingscheme, and store the code and the scheme parameters in any suitabledatabase or data structure.

The host may then provide the scheme identifier to any authorizedcommodity supplier, and/or may configure and provide code provisiondevices with the scheme identifier to the suppliers. The suppliersincorporate the code in the code provision devices in goods supplied tothe user. In an automated production facility, for example, a suppliermay receive an order from “User X.” The production control computerchecks with the reordering host to see if a reordering code is availablefor the ordered commodity and User X, using standard user and productidentifier formats to identify the relevant product and user. If noactive reordering scheme exists, the order is handled in a conventionalfashion. If an active rendering scheme exists, the production controllerobtains the scheme identifier from the reordering hosts, andautomatically includes it in a code-provision device included in theproduct order. Thus, the supplier ships a product to User X that iscustomized with a code-provision device holding User X's definedreordering scheme for the product in encoded form. The supplier may alsonotify User X that the product is shipped with an automatic reorderingdevice or code, optionally with instructions for use. If a reorderingdevice is used, the supplier may also include instructions and suppliesfor returning the device to the supplier after use, for example apostage-paid return address envelope.

The host waits to receive the scheme identifier from an authorizedclient. Of course, the host is configured to receive multiple schemeidentifiers for multiple users from multiple clients, of which thepresent example discusses just one instance. At 206, the host receivesthe scheme identifier from an authorized client. For example, the schemeidentified by the scheme identifier may specify a specific useridentifier and secure password. The client providing the schemeidentifier may transmit the user identifier and/or password with thescheme identifier to the host, thereby indicating that the transmissionof the scheme identifier is authorized by the client. In thealternative, or in addition, the host may require confirmation andauthentication using any suitable message exchange. However, in generalit may be preferable to avoid exchanges that require active userparticipation at the time of reordering, to increase convenience for theuser.

At 208, the host may initiate a reordering sequence or scheme asindicated by the scheme identifier, using the stored scheme data. In thealternative, or in addition, the scheme identifier may comprise allnecessary information defining the reordering scheme, in encoded form.The reordering scheme causes delivery of the specified commodity in aspecific predetermined quantity to a defined destination address, with acorresponding debit to a payment account. For example, the reorderinghost may transmit a pre-authorized transaction request to a designatedcommerce server for the product to be reordered. Optionally, thereordering host may select the commerce server offering the product atthe most competitive price and terms at the time of the reorder, fromseveral possible sources. At 210, the host may generate and transmit atransaction report for the reordered merchandise to a designated addressfor the relevant user.

FIG. 3 is a flow chart showing an example of a method 300 forimplementation using a client device proximal to the point of use for asupplied commodity. At 302, the client may initiate an application forperforming the method 300. For example, an application running in thebackground may be started whenever the client is powered on. In thealternative, the application may be started in response to specific userinput.

At 304, the application places the client in a state ready to receive areordering scheme identifier (also called a reorder code). The devicereceives the code whenever provided from the code provision device withthe commodity product. In some embodiments, the code is providedentirely automatically. For example, when a sensor detects that a fluidcontainer has emptied to a certain point, the sensor triggers wirelesstransmission of a stored electronic code to a client in the vicinity. Inother embodiments, the code is provided semi automatically. Again usingthe fluid commodity example, when the sensor detects a specified levelof emptiness, a button or other actuator may pop up on the container,which when depressed or otherwise energized by the user, causestransmission of the scheme identifier to the client. For furtherexample, transmission may be triggered by bringing a mobile clientdevice in close proximity to an encoded label or the like that has beenrevealed by exhaustion of a certain amount or quantity of product;conversely, the label may be carried by the user to a stationary clientand there read or scanned by the client. The client through any suitableinput means receives the scheme identifier and may recognize it as avalid identifier for an authorized user of the client.

At 306, if the client determines the code is valid or if it cannot makea determination, it may confirm user intent to reorder using anysuitable message exchange through its user input/output devices. Ifintent is not confirmed 308, the client may resume waiting 304 orterminate the application. If user intent is confirmed 308, the clientmay transmit 310 the reorder code to a predetermined networkdestination, waiting to receive confirmation of receipt. If receipt isnot confirmed 312, the client may retransmit 310. If receipt isconfirmed, the client may wait for the reorder transaction to beprocessed, then receive and output 314 the transaction report receivedfrom the reordering host or other server. Thus, the user can be providedwith customized, convenient automatic or semi-automatic reordering foralmost any conceivable consumable commodity.

FIG. 4 illustrates packaging 414 for a commodity product 420. When new,the package is full and the commodity 420 fills the packaging 414 to thefull level 416, covering an concealing the code-provision device 400. Asthe product is used the level in the package 414 lowers until reaching alower level 418 at which the device 400 is fully revealed and accessibleto a user.

Details of the device 400 are shown in enlarged diagram to the left ofthe package 414. In addition, further details of the device 400 may beas described herein above for stand-alone code provision devices. Theillustrated device 400 is of a push-button type, and includes a userinput device 406 configured as a membrane switch or the like. The userinput device 406 is covered by a cap 404, which protects the user inputdevice 406 from contact with the commodity 420. Once the cap is revealedby the lowering of the commodity 420 level, a user may remove the cap toaccess and activate the device 400 via the user input device 406. Thedevice 400 may be designed as a single-use device, in which case the cap404 need not be replaced and the device 400 may be disposed of with theempty packaging 414 after the commodity is completely consumed. In thealternative, the cap 404 may be replaced after use to protect the device400 from damage, and the entire package 414 with the device 400, or thedevice 400 alone, may be returned to the supplier for possiblerecycling, refurbishing, and/or reuse.

The device 400 may include a processor 410 couple to the user interfacedevice 405 and to a memory 408 enclosed in a housing or package 402.Activation of the user input device 406 by a user (or sensor, if used)may cause a signal to be received by the processor 411. The processor(which may comprise a simple logic circuit or a more complex specializedmicroprocessor, or some combination) may response by obtaining apreviously registered reordering (resupply) code for the commodity 420from the memory 408, and transmit the reordering code via a transmitter412. Optionally, the device 400 may transmit the code multiple time overa designated time period, or until the device receives anacknowledgement of successful transmission via a return wireless signalor other input. Other information in addition to the registered code mayalso be transmitted by the device 400, for example, signals forfacilitating a wireless transmission or other communication or otherunregistered information. Registered information may include a productidentifier for the commodity 420 and an identifier for a user account towhich the reorder transaction should be charged.

In an alternative, instead of a wireless transmitter 412, the device 400may use a temporary wired connection to transmit the registeredreordering code to a client node. In such case, the device 400 mayinclude a socket 411 for temporarily receiving a mating cable connectoronly for transmitting a reordering code. As noted above, the act ofconnecting a suitable client to the device 400 via the socket 411 and acable may be configured to cause a transmission sequence for thereordering code to be initiated. Other aspects of the device 400 may beas described herein above.

Various aspects are presented herein in terms of systems that mayinclude a number of components, modules, and the like. It is to beunderstood and appreciated that the various systems may includeadditional components, modules, etc. and/or may not include all of thecomponents, modules, etc. discussed in connection with the figures. Acombination of these approaches may also be used. The various aspectsdisclosed herein can be performed on electrical devices includingdevices that utilize touch screen display technologies and/ormouse-and-keyboard type interfaces. Examples of such devices includecomputers (desktop and mobile), smart phones, personal digitalassistants (PDAs), and other electronic devices both wired and wireless.

In addition, the various illustrative logical blocks, modules, andcircuits described in connection with the aspects disclosed herein maybe implemented or performed with a general purpose processor, a digitalsignal processor (DSP), an application specific integrated circuit(ASIC), a field programmable gate array (FPGA) or other programmablelogic device, discrete gate or transistor logic, discrete hardwarecomponents, or any combination thereof designed to perform the functionsdescribed herein. A general purpose processor may be a microprocessor,but in the alternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

Furthermore, the one or more versions may be implemented as a method,apparatus, or article of manufacture using standard programming and/orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer to implement the disclosedaspects. A non-transitory computer readable medium may include but isnot limited to magnetic storage devices (e.g., hard disk, floppy disk,magnetic strips . . . ), optical disks (e.g., compact disk (CD), digitalversatile disk (DVD) . . . ), smart cards, and flash memory devices(e.g., card, stick). Of course, those skilled in the art will recognizemany modifications may be made to this configuration without departingfrom the scope of the disclosed aspects.

The steps of a method or algorithm described in connection with theaspects disclosed herein may be embodied directly in hardware, in asoftware module executed by a processor, or in a combination of the two.A software module may reside in RAM memory, flash memory, ROM memory,EPROM memory, EEPROM memory, registers, hard disk, a removable disk, aCD-ROM, or any other form of computer-readable storage medium known inthe art. A non-transitory computer-readable storage medium may becoupled to the processor such the processor can read information from,and write information to, the storage medium. In the alternative, thestorage medium may be integral to the processor. The processor and thestorage medium may reside in an ASIC. The ASIC may reside in a userterminal. In the alternative, the processor and the storage medium mayreside as discrete components in a user terminal.

The previous description of the disclosed aspects is provided to enableany person skilled in the art to make or use the present disclosure.Various modifications to these aspects will be readily apparent to thoseskilled in the art, and the generic principles defined herein may beapplied to other embodiments without departing from the spirit or scopeof the disclosure. Thus, the present disclosure is not intended to belimited to the embodiments shown herein but is to be accorded the widestscope consistent with the principles and novel features disclosedherein.

In view of the exemplary systems described supra, methodologies that maybe implemented in accordance with the disclosed subject matter have beendescribed with reference to several flow diagrams. While for purposes ofsimplicity of explanation, the methodologies are shown and described asa series of blocks, it is to be understood and appreciated that theclaimed subject matter is not limited by the order of the blocks, assome blocks may occur in different orders and/or concurrently with otherblocks from what is depicted and described herein. Moreover, not allillustrated blocks may be required to implement the methodologiesdescribed herein.

The foregoing embodiments merely exemplify various apparatus and systemsfor facilitating resupply orders for consumable commodities. The presenttechnology is not limited by these examples.

The invention claimed is:
 1. A method, comprising: receiving a signalencoding a registered code from a code-provision device associated witha defined quantity of a commodity, in response to an event indicatingthat consumption of a predetermined portion of the defined quantity hasoccurred; wherein the signal is sent in response to a human's request asexpressed via interaction with an input device; decoding the signal torecognize the registered code, using a client device proximal to thecode-provision device; and transmitting the registered code to adesignated remote address, to initiate an automated transaction orderingan additional amount of the commodity for shipment to a designatedaddress.
 2. The method of claim 1, wherein the code-provision device ispackaged with a defined quantity of a commodity in packaging that isfree of any wired interface to a machine.
 3. The method of claim 1,further comprising outputting a confirmation signal from the clientdevice, prior to transmitting the registered code to the designatedremote address.
 4. The method of claim 3, wherein transmitting theregistered code to the designated remote address is performed inresponse to receiving a response to the confirmation signal.
 5. Themethod of claim 1, wherein receiving the signal comprises receiving awireless electronic transmission encoding the registered code from aradio-frequency transmitter of the code-provision device.
 6. The methodof claim 1, wherein the event comprises activating a sensor incommunication with the code-provision device, the sensor operative tosense at least one of a commodity level and a change in packageconfiguration.
 7. The method of claim 1, further comprising initiatingan application on the client device to place the client device in astate for receiving the signal.
 8. The method of claim 1, wherein theclient device is incorporated in a wireless router, and uses a differentwireless protocol than the wireless router to receive the signal fromthe code-provision device.
 9. An apparatus comprising a wirelessreceiver; a processor coupled to the receiver; and a memory coupled tothe processor; wherein the memory holds program instructions, that whenexecuted by the processor, causes the apparatus to perform: receiving asignal encoding a registered code from a code-provision deviceassociated with a defined quantity of a commodity, in response to anevent indicating that consumption of a predetermined portion of thedefined quantity has occurred; wherein the signal is sent in response toa human's request as expressed via interaction with an input device;decoding the signal to recognize the registered code, using a clientdevice proximal to the code-provision device; and transmitting theregistered code to a designated remote address, to initiate an automatedtransaction ordering an additional amount of the commodity for shipmentto a designated address.
 10. The apparatus of claim 9, wherein thecode-provision device is packaged with a defined quantity of a commodityin packaging that is free of any wired interface to a machine.
 11. Theapparatus of claim 9, wherein the memory holds further programinstructions, that when executed by the processor, causes the apparatusto perform outputting a confirmation signal from the client device,prior to transmitting the registered code to the designated remoteaddress.
 12. The apparatus of claim 11, wherein transmitting theregistered code to the designated remote address is performed inresponse to receiving a response to the confirmation signal.
 13. Theapparatus of claim 9, wherein receiving the signal comprises receiving awireless electronic transmission encoding the registered code from aradio-frequency transmitter of the code-provision device.
 14. Theapparatus of claim 9, wherein the event comprises activating a sensor incommunication with the code-provision device, the sensor operative tosense at least one of a commodity level and a change in packageconfiguration.
 15. The apparatus of claim 9, wherein the client deviceis incorporated in a wireless router, and uses a different wirelessprotocol than the wireless router to receive the signal from thecode-provision device.
 16. A method, comprising: receiving a signalencoding a registered code from a code-provision device associated witha defined quantity of a commodity, in response to an event indicatingthat consumption of a predetermined portion of the defined quantity hasoccurred; wherein the signal is sent in response to a human's request asexpressed via interaction with an input device; decoding the signal torecognize the registered code, using a client device, wherein the clientdevice is coupled to a wireless receiver tuned to a specific frequencyband for use by the code-provision device; and transmitting theregistered code to a designated remote address, to initiate an automatedtransaction ordering an additional amount of the commodity for shipmentto a designated address.